Layout Preserving Parser for Refactoring in Erlang

نویسندگان

  • Róbert KITLEI
  • László LÖVEI
  • Tamás NAGY
  • Zoltán HORVÁTH
  • Tamás KOZSIK
چکیده

This paper describes preprocessor and whitespace-aware tools for parsing and transforming Erlang source code. The presented tools are part of RefactorErl, a refactoring tool for Erlang programs. RefactorErl represents programs as a ”semantic graph” that extends the AST with semantic nodes and edges for efficient information retrieval. The paper focuses on describing the construction of the AST and syntax based transformations of the semantic graph.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

A User-extensible Refactoring Tool for Erlang Programs

Refactoring is the process of changing the design of a program without changing what it does. While it is possible to refactor a program by hand, tool support is considered invaluable as it allows largescale refactorings to be performed easily. However, most refactoring tools are black boxes, supporting a fixed set of ‘core’ refactorings. This paper reports the framework built into Wrangler – a...

متن کامل

Generic syntactic analyser: ParsErl

The increasing demand in automatic code transformation tools – which can preserve the layout, and can handle the whole macro syntax – led us to develop our scanner and parser tool. ParsErl is a generic syntactic analyser for Erlang. The scanner and the parser are generated from an XML definition of the grammar. The result of the scanning process is a graph, which can be optimised or balanced fo...

متن کامل

Refactoring in Erlang, a Dynamic Functional Language

Refactoring in object-oriented languages has been well studied, but functional languages have received much less attention. This paper presents our ideas about refactoring in Erlang, a functional programming language developed by Ericsson for building telecommunications systems. The highlights of our work is dealing with the strong dynamic nature of Erlang and doing program manipulations using ...

متن کامل

A Comparative Study of Refactoring Haskell and Erlang Programs

Refactoring is about changing the design of existing code without changing its behaviour, but with the aim of making code easier to understand, modify, or reuse. Taking Haskell and Erlang as examples, we investigate the application of refactoring techniques to functional programs, and building tools for supporting interactive refactoring. Although both Haskell and Erlang are general-purpose fun...

متن کامل

Towards Trustworthy Refactoring in Erlang

Tool-assisted refactoring transformations must be trustworthy if programmers are to be confident in applying them on arbitrarily extensive and complex code in order to improve style or efficiency. We propose a simple, high-level but rigorous, notation for defining refactoring transformations in Erlang, and show that this notation provides an extensible, verifiable and executable specification l...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2009